$primary-color: #409EFF;
$primary-background-color: #ecf5ff;

*,
:after,
:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.fa-icon {
  width: auto;
  height: 1em;
  /* 或任意其它字体大小相对值 */
  /* 要在 Safari 中正常工作，需要再引入如下两行代码 */
  max-width: 100%;
  max-height: 100%;
  vertical-align: middle;
}

.center-container {
  border-left: 1px solid #e0e0e0;
  border-right: 1px solid #e0e0e0;

  .content-tool {
    position: relative;
    padding: 0 10px;
    background-color: white;

    .right-tools {
      position: absolute;
      top: 0px;
      right: 15px;
    }
  }

  .content {
    font-size: 18px;
    border-bottom: solid 2px #e4e7ed;
    position: relative;
    padding: 0 10px;
  }

  .el-main {
    padding: 0;
    position: relative;
  }
}

.components-list {
  padding: 0;
  width: 100%;
  height: 100%;
  overflow-x: hidden !important;

  .widget-cate {
    padding: 8px 12px;
    font-size: 13px;
  }

  ul {
    position: relative;
    overflow: hidden;
    padding: 0 10px 10px;
    margin: 0;
  }

  .scrollbar-wrap {
    ul {
      margin-bottom: 10px;
    }
  }

  .form-edit-widget-label {
    font-size: 12px;
    display: block;
    width: 98%;
    line-height: 26px;
    position: relative;
    float: left;
    left: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin: 1%;
    color: #333;
    border: 1px solid #F4F6FC;

    img {
      width: auto;
      height: 60px;
    }

    &:hover {
      color: $primary-color;
      border: 1px dashed $primary-color;
    }

    &>a {
      display: block;
      cursor: move;
      background: #F4F6FC;
      border: 1px solid #F4F6FC;
      padding-left: 10px;

      i {
        margin-right: 6px;
        margin-left: 8px;
        font-size: 16px;
        display: inline-block;
        vertical-align: middle;

        &.el-icon-yrt-danhangshurukuang {
          font-size: 20px;
          margin-top: -5px;
          margin-right: 3px;
        }

        &.el-icon-yrt-fuhao-shuzishurukuang {
          font-size: 20px;
          margin-right: 3px;
          margin-top: -5px;
        }

        &.el-icon-yrt-kaiguanclose {
          font-size: 20px;
          margin-right: 3px;
          margin-top: -5px;
        }
      }

      span {
        display: inline-block;
        vertical-align: middle;
      }
    }
  }

  .el-collapse-item__header {
    padding-left: 10px;
  }

  .el-collapse-item__content {
    padding-bottom: 0px;
  }
}

.widget-form-container {
  .widget-form-list {
    height: 100%;
    padding-bottom: 0px;

    &.form-region {
      min-height: 700px;
    }

    &.grid-list {
      min-height: 50px;
    }

    &.inline-list {
      min-height: 50px;
    }

    &.detail-list {
      min-height: 300px;
    }

    .widget-view {
      padding: 5px 10px;
      margin: 0;
      position: relative;
      border-left: 5px solid transparent;

      &.is_req {
        .el-form-item__label::before {
          content: '*';
          color: #f56c6c;
          margin-right: 4px;
        }
      }

      &:after {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        top: 0;
        display: block;
        z-index: 1001;
      }

      &:hover {
        background: $primary-background-color;
        border-left: 5px solid $primary-background-color;
      }

      &.active {
        border-left: 5px solid $primary-color;
        background: #b3d8ff;
      }
    }

    .inline-view {
      padding: 5px 5px 5px 5px;
      margin: 0;
      position: relative;
      border-left: 5px solid transparent;
      display: inline-block;

      &:after {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        top: 0;
        display: block;
        z-index: 1001;
        content: "";
      }

      &:hover {
        background: $primary-background-color;
        border-left: 5px solid $primary-background-color;
      }

      &.active {
        border-left: 5px solid $primary-color;
        background: #b3d8ff;
      }
    }

    .widget-action-delete {
      position: absolute;
      right: 20px;
      bottom: -35px;
      z-index: 1009;
    }

    .widget-action-clone {
      position: absolute;
      right: 70px;
      bottom: -35px;
      z-index: 1009;
    }
  }

  .widget-grid {
    background: #F4F6FC;
    position: relative;
    border-left: 5px solid transparent;
    padding: 5px;
    margin: 0 !important;

    &.active {
      border-left: 5px solid $primary-color;
      background: #b3d8ff;
    }
  }

  .widget-grid-container {
    &.ghost {
      &::after {
        background: #fff;
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        top: 0;
        display: block;
        z-index: 10;
        content: '';
      }
    }
  }

  .ghost {
    background: #fff;
    border: 1px dashed $primary-color;

    &::after {
      background: #fff;
    }
  }

  li.ghost {
    height: 30px;
    list-style: none;
    font-size: 0;
  }

  .splitter-title {
    padding: 10px;
    border-bottom: #dcdfe6 1px solid;
  }
}

.widget-config-container {
  position: relative;

  .el-header {
    border-bottom: solid 2px #e4e7ed;
    padding: 0px;
  }

  .config-tab {
    height: 45px;
    line-height: 45px;
    display: inline-block;
    width: 145px;
    text-align: center;
    font-size: 14px;
    font-weight: 500;
    position: relative;
    cursor: pointer;

    &.active {
      border-bottom: solid 2px $primary-color;
    }
  }

  .config-content {
    padding: 0px;
    overflow: hidden;

    .el-form-item__label {
      padding: 0;
      font-weight: 500;
    }

    .el-form-item {
      border-bottom: solid 1px #e1e1e1;
      padding-bottom: 10px;
    }
  }

  .ghost {
    background: #fff;
    border: 1px dashed $primary-color;

    &::after {
      background: #fff;
      display: block;
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
    }
  }

  ul {
    margin: 0;
    padding: 0;
  }

  li.ghost {
    list-style: none;
    font-size: 0;
    display: block;
    position: relative;
  }
}

.widget-grid-container {
  .el-form-item {
    padding-bottom: 0px;
    margin-bottom: 0px;
  }
}

.manager-form-container {
  li.ghost {
    line-height: 30px;
    list-style: none;
    background: #fff;
    border: 1px dashed $primary-color;
    padding: 10px;

    &::after {
      background: #fff;
    }
  }

  .draggable-main {
    min-height: 600px;
    margin: 0;
    padding: 0;

    li.item {
      border: 1px solid #f8f8f8;
      padding: 10px;
      margin: 1px;
      background-color: #f3f3f3;
      line-height: 30px;

      .handle {
        cursor: move;
        color: rgb(70, 70, 71);
      }

      &.over {
        background-color: #fff;
      }

      &.active {
        background-color: rgb(211, 228, 253);
      }

      &.chosen-item {
        border: 1px dotted rgb(44, 104, 163);
        background-color: #409eff;
        color: white;

        .handle {
          color: white;
        }
      }

      .right-tool {
        float: right;
        margin-top: 0px;
      }
    }
  }

  .button-container-title {
    color: #888;
    padding: 10px;
    background-color: #f8f8f8;
    border-bottom: 1px solid #EBEEF5;
    margin-bottom: 2px;
  }

  .button-container {
    background-color: #f8f8f8ef;
    min-height: 40px;
    padding: 0 10px 10px;
    overflow: -webkit-paged-x;

    .button-group {
      border: 1px dashed #999;
      float: left;
      min-height: 40px;
      margin-right: 2px;
      position: relative;

      .button-box {
        min-height: 40px;
        display: inline-block;

        &:empty {
          padding-left: 110px;
        }
      }

      .tool {
        position: absolute;
        right: 10px;
        bottom: -10px;
      }

      &.active {
        border-left: 3px solid #409EFF;
        background-color: #b3d8ff;

        >.tool {
          display: block;
        }
      }
    }

    .el-button {
      position: relative;

      &::after {
        content: "";
        z-index: 1;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
      }
    }

    .button-item {
      float: left;
      padding: 2px;
      position: relative;

      .tool {
        position: absolute;
        bottom: -10px;
        display: none;
      }

      &.active {
        border-left: 3px solid #409EFF;
        background-color: #b3d8ff;

        .tool {
          display: block;
        }
      }
    }

    .button-ghost {
      background-color: #fff;
      border: 1px solid #dcdfe6;
      border-radius: 4px;
      display: inline-block;
      padding: 10px;
      margin-left: 20px;
    }
  }
}

.show-fields-dialog {
  .el-dialog__body {
    padding: 0px 10px;
  }
}

.widget-empty {
  background: url("./assets/form_empty.png") no-repeat;
  background-position: 30% 20%;
}

.designer-container {
  background-color: white;

  .module {
    padding: 0 12px;
    overflow: hidden;

    .title {
      padding: 10px 0;
    }
  }
}

.el-popover {
  padding: 0px !important;

  .tree-loading {
    background-color: rgba(255, 255, 255, 0.9);
    right: 220px;
    top: -10px;
  }
}

.tree.scrollbar-wrap {
  max-height: 410px;
  overflow-x: hidden;
  padding: 10px;

  .el-tree {
    margin-bottom: 10px;
  }
}

.fields.scrollbar-wrap {
  max-height: 410px;
  overflow-x: hidden;
  padding: 0px;
}

.config.scrollbar-wrap {
  max-height: 750px;
  overflow-x: hidden;
  padding: 10px;
}

@media (max-height: 750px) {
  .config.scrollbar-wrap {
    max-height: 600px;
  }
}

.widget-config.scrollbar-wrap {
  max-height: 750px;
  overflow-x: hidden;
  padding: 10px;
}

.select-icon {
  padding: 10px;

  .scrollbar-wrap {
    max-height: 500px;
  }
}